package com.shuyu.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

@Data
@ApiModel(description = "用户资产")
@TableName("tbl_customer_assets")
public class CustomerAssets implements Serializable {
    private static final long serialVersionUID = 830861247172221236L;
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    @ApiModelProperty(value = "用户ID")
    private Long customerId;
    @ApiModelProperty(value = "产品id")
    private Integer productId;
    @ApiModelProperty(value = "产品品名字")
    private String productName;
    @ApiModelProperty(value = "产品类型1:NFT;2:卡牌;3:MV;4:内部权益;5:外部权益")
    private Integer productType;
    @ApiModelProperty(value = "资产类型 1NFT 2卡牌 3MV 4积分")
    private Integer assetsType;
    @ApiModelProperty(value = "nft所在位置")
    private String position;
    private Date createTime;
    @ApiModelProperty(value = "图片")
    private String img;
    private Integer nftId;
    @ApiModelProperty(value = "Nft流转记录")
    private transient List<NftTransfer> nftTransferList;
    @ApiModelProperty(value = "产品信息")
    private transient Product product;
    private String collectionCode;

    public CustomerAssets() {
    }

    public CustomerAssets(Long customerId, Integer productId, Integer productType, Date createTime, Integer nftId, Integer assetsType, String collectionCode) {
        this.customerId = customerId;
        this.productId = productId;
        this.productType = productType;
        this.createTime = createTime;
        this.nftId = nftId;
        this.assetsType = assetsType;
        this.collectionCode = collectionCode;
    }
}
